/**══════════════════════════════════╗
*作    者：songbaobao                                                 ║
*职    业：我以我血荐轩辕                                              ║
*CSND地址：https://blog.csdn.net/weixin_43949535                       ║
**GitHub ：https://github.com/TsinghuaLucky912/My_own_C-_study_and_blog║
**GitEE  ：https://gitee.com/lucky912_admin/code-up_-pat               ║
*═══════════════════════════════════╣
*创建时间：                                                           
*功能描述：                                                            
*                                                                      
*                                                                      
*═══════════════════════════════════╣
*结束时间:                                                           
*═══════════════════════════════════╝
//                .-~~~~~~~~~-._       _.-~~~~~~~~~-.
//            __.'              ~.   .~              `.__
//          .'//              西南\./联大               \\`.
//        .'//                     |                     \\`.
//      .'// .-~"""""""~~~~-._     |     _,-~~~~"""""""~-. \\`.
//    .'//.-"                 `-.  |  .-'                 "-.\\`.
//  .'//______.============-..   \ | /   ..-============.______\\`.
//.'______________________________\|/______________________________`.
*/

#include "main.h"

/* ---------------------------------------------------------- */
/*
* 加载背景图片
*/
IMAGE background;

void mainWindow()
{
	// 加载背景图片
	loadimage(&background, "./images/background.png");
	// 把该图片贴在初始位置
	putimage(0, 0, &background);
}
/* ---------------------------------------------------------- */
void scoreWindow(Planes& plane)
{
	TCHAR s[40];
	_stprintf(s, _T("Your Score:%d"), plane.getScore());

	//fillrectangle(WIDOWWIDTH, 0, WIDOWWIDTH + 150, WIDOWHEIGHT);
	solidrectangle(WIDOWWIDTH - 5, 0, WIDOWWIDTH + 150, WIDOWHEIGHT / 2);
	// setfillcolor(LIGHTCYAN);
	setfillcolor(TOOTHPASTE);

	settextstyle(16, 0, "Elite");
	settextcolor(BLACK);
	setbkmode(TRANSPARENT);// 去掉文字背景
	outtextxy(WIDOWWIDTH, 0, s);
}
/* ---------------------------------------------------------- */
void usageWindow()
{
	//fillrectangle(WIDOWWIDTH, 0, WIDOWWIDTH + 150, WIDOWHEIGHT);
	solidrectangle(WIDOWWIDTH - 5, WIDOWHEIGHT / 2, WIDOWWIDTH + 150, WIDOWHEIGHT);
	// setfillcolor(LIGHTCYAN);
	setfillcolor(LIGHTCYAN);

	settextstyle(16, 0, "Courier");
	settextcolor(BLACK);
	setbkmode(TRANSPARENT);// 去掉文字背景

	RECT r = { WIDOWWIDTH - 5, WIDOWHEIGHT / 2, WIDOWWIDTH + 150, WIDOWHEIGHT };
	drawtext(_T("Game Usage:\nUp:w\nDown:s\nLeft:a\nRight:d"), &r, DT_TOP | DT_VCENTER);
}
/* ---------------------------------------------------------- */
/*
* 加载飞机图片
*/
IMAGE planePic[2];

/*
* 需要使用上 透明贴图 技术
*/
void planeWindow(Planes& plane)
{
	// 加载飞机图片
	loadimage(&planePic[0], "./images/me4.png");// 掩码图 空洞
	loadimage(&planePic[1], "./images/me3.png");// 原图

	// 把飞机图片放置于该图窗口的中间位置
	putimage(plane.getX(), plane.getY(), &planePic[0], SRCAND);// 先贴掩码图
	putimage(plane.getX(), plane.getY(), &planePic[1], SRCPAINT);// 再贴原图
}
/* ---------------------------------------------------------- */
/*
* 加载子弹图片
*/
IMAGE bulletPic[2];

void bulletWindow(vector<Bullets>& bullet)
{
	// 加载子弹图片
	loadimage(&bulletPic[0], "./images/bullet1_mask.png");// 掩码图 空洞
	loadimage(&bulletPic[1], "./images/bullet1.png");// 原图

	/* 把子弹图片放置于其所在位置 */
	for (vector<Bullets>::iterator it = bullet.begin(); it != bullet.end(); ++it)
	{
		if (it->getStatus())
		{
			putimage(it->getX(), it->getY(), &bulletPic[0], SRCAND);// 先贴掩码图
			putimage(it->getX(), it->getY(), &bulletPic[1], SRCPAINT);// 再贴原图
		}
	}
}
/* ---------------------------------------------------------- */
/*
* 加载敌机图片 共有三种
*/
IMAGE enemyPic[3][2];

void enemyWindow(vector<Enemys>&enemy)
{
	// 加载敌机图片
	loadimage(&enemyPic[0][0], "./images/enemy1_mask.png");// 小敌机掩码图 空洞
	loadimage(&enemyPic[0][1], "./images/enemy1.png");// 原图

	loadimage(&enemyPic[1][0], "./images/enemy2_mask.png");// 中敌机掩码图 空洞
	loadimage(&enemyPic[1][1], "./images/enemy2.png");// 原图

	loadimage(&enemyPic[2][0], "./images/enemy3_mask.png");// 大敌机掩码图 空洞
	loadimage(&enemyPic[2][1], "./images/enemy3.png");// 原图

	/* 把子弹图片放置于其所在位置 */
	for (vector<Enemys>::iterator it = enemy.begin(); it != enemy.end(); ++it)
	{
		if (it->getStatus())
		{
			if (it->getType() == EnemyType::smallType)
			{
				putimage(it->getX(), it->getY(), &enemyPic[0][0], SRCAND);// 先贴掩码图
				putimage(it->getX(), it->getY(), &enemyPic[0][1], SRCPAINT);// 再贴原图
			}
			else if (it->getType() == EnemyType::middleType)
			{
				putimage(it->getX(), it->getY(), &enemyPic[1][0], SRCAND);// 先贴掩码图
				putimage(it->getX(), it->getY(), &enemyPic[1][1], SRCPAINT);// 再贴原图
			}
			else
			{
				putimage(it->getX(), it->getY(), &enemyPic[2][0], SRCAND);// 先贴掩码图
				putimage(it->getX(), it->getY(), &enemyPic[2][1], SRCPAINT);// 再贴原图
			}
			
		}
	}
}
/* ---------------------------------------------------------- */
/**
*备用注释：
*
*
*
*/
